package com.rd.student.jike.class2.xuezhixin.Work719;

import java.util.ArrayList;
import java.util.concurrent.atomic.AtomicInteger;

public class Work02 extends Thread{

    int min;
    int max;
    int num;
    static int all;
    B b;
    static ArrayList list = new ArrayList<>();

    public Work02(int min, int max,B b) {
        this.min = min;
        this.max = max;
        this.b = b;
    }

    public static void add(){
        for (int i = 0;i<list.size();i++){
            all += (int)list.get(i);
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
            System.out.println(list.get(i));
        }
        System.out.println(all);
    }

    @Override
    public void run() {
        synchronized (b) {
            for (int i = min; i <= max; i++) {
                num += i;
            }
            list.add(num);
        }
    }



    public static void main(String[] args) {
        B b = new B();
       new Work02(1,10,b).start();
       new Work02(11,20,b).start();
       new Work02(21,30,b).start();
       new Work02(31,40,b).start();
       new Work02(41,50,b).start();
       new Work02(51,60,b).start();
       new Work02(61,70,b).start();
       new Work02(71,80,b).start();
       new Work02(81,90,b).start();
       new Work02(91,100,b).start();

       Work02.add();
    }
}
class B{
    private int num = 0;
}

//class B{
//    static volatile int i = 1;
//    //static AtomicInteger all = new AtomicInteger(0);
//    static boolean b = true;
//    public static void add(){
//        //all.getAndDecrement();
//        i++;
//        if(i>100){
//            b = false;
//        }
//    }
//}
//
//class Thread2_1 extends Thread{
//    B b;
//    static int num1 = 0;
//
//    public Thread2_1(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 11) {
//                System.out.println(b.i);
//                num1 += b.i;
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_2 extends Thread{
//    B b;
//
//    public Thread2_2(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 21) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_3 extends Thread{
//    B b;
//
//    public Thread2_3(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 31) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_4 extends Thread{
//    B b;
//
//    public Thread2_4(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 41) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_5 extends Thread{
//    B b;
//
//    public Thread2_5(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 51) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_6 extends Thread{
//    B b;
//
//    public Thread2_6(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 61) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_7 extends Thread{
//    B b;
//
//    public Thread2_7(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 71) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_8 extends Thread{
//    B b;
//
//    public Thread2_8(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 81) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_9 extends Thread{
//    B b;
//
//    public Thread2_9(B b) {
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 91) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
//class Thread2_10 extends Thread{
//    B b;
//
//    public Thread2_10(B b) {
//        super();
//        this.b = b;
//    }
//
//    @Override
//    public void run() {
//        while (b.b){
//            if(b.i < 101) {
//                System.out.println(b.i);
//                b.add();
//            }
//        }
//    }
//}
